成为 Reviewer
Reviewer 负责审核来自于社区的补丁,根据测试的结果,给出反馈意见,帮助 Developer 们开发出更好的符合内核需要的补丁来。
如果你想要参与内核改进的审核的话,可以按照如下的步骤进行。
- 登录 PostgreSQL 国际社区账户
- 打开 Commitfest 应用程序
找到处于“Open”状态的一栏
- 之后,Commitfest 应用程序将会为你罗列当前 PostgreSQL 内核社区接收到的有关补丁,可以选择一个感兴趣的补丁
- 在对应补丁的界面中,找到“Become Reviewer”按钮,即可以登记成为内核审核者
- 根据补丁页面的指引,参与对应邮件序列的讨论,下载补丁,给出反馈意见,帮助内核改进
如何找到对应的邮件序列?
在补丁页面的 Emails 栏目中,可以找到对应的讨论序列,通过向讨论序列发送邮件,即可以参与到讨论之中。
补丁在哪里下载?
在补丁对应的讨论邮件序列中,可以找到由 Developer 发送的补丁,选择最新版本的补丁下载即可(前面版本的也欢迎下载,它们可以帮助你了解到补丁在历史上面的设计思路)。
Reviewer 需要自己开发补丁吗?
不需要。
Reviewer 的责任在于给补丁提供反馈意见,而不是开发补丁,出于尊重 Developer 以及维护社区秩序的需要,不要发送我们自己开发的补丁。
如何对这些补丁进行测试?
首先,在本地的 PostgreSQL 仓库之中,请使用 git branch 指令,新建一条代码分支,帮助你测试这个补丁,假如命名为 “test”
之后将仓库的分支切换到 test 上面来。
git branch test
git checkout test
之后,把补丁放到同源代码同一层级的文件夹来,使用 git am 指令进行整合(这里我们选择的补丁只有单一的文件,实际中补丁文件可能不止一个,这就需要我们灵活处理)。
因为不同补丁使用的 git am 指令形式可能出现一定的变化,因此我不在这里给出对应的代码而只是给出截图,避免误导。
这里发生了合并冲突的错误,得益于我们加上了 --reject 选项的缘故,在发生冲突的地方将会生成一个 .rej 文件,参考下面。
这些 rej 文件的内容,实际上就是 patch 希望对文件做,而没能做成的修订,我们只需要参考着文件的内容,手动合并就行。
在手动合并之后,使用下面的指令记录更改,并且再次执行 git am 推进合并。
git add .
git am --continue
在应用成功之后,patch 就已经顺利应用到 PostrgeSQL 之上,之后我们就可以重新编译内核,展开测试的工作,并给出评审的意见了。
测试完成之后,可以使用git checkout master
切换回主线,再使用 git branch -D
指令删除对应分支,这样就在不干扰内核主线代码的情况下,完成了测试工作。